10. The Course Starter Code

Header Text

The Course Starter Code

Starter Repo Structure

ND313 C1 L1 A07 The Course Starter Code [LB]

The Starter Code Structure

All the code for doing lidar obstacle detection is contained in a GitHub repository. The classroom has workspace environments that already include all the dependencies for getting started right way. You can also clone the repo, and use the README to get started on your own machine as well. Here is the link

You will mostly be working out of two main files, which are environment.cpp and processPointClouds.cpp . The environment.cpp file contains the main function and will generate the runnable executable. The processPointClouds.cpp file will contain all your function placeholders to process the pcd.

There are some other files worth mentioning, like sensors/lidar.h , which simulates lidar sensing and creates point cloud data. Also render.cpp and render.h which have functions for rendering objects onto the screen.

Code Structure

  • Top-level CMakeLists.txt
  • Readme
  • src
    • render
    • box.h - this file has the struct definitions for box objects
    • render.h
    • render.cpp - this file, along with the header, define the classes and methods for rendering objects.
    • sensors
    • data - this directory contains pcd data used in the course.
    • lidar.h - has functions using ray casting for creating pcd.
    • environment.cpp - the main file for using pcl viewer and processing and visualizing pcd.
    • processPointClouds.h
    • processPointClouds.cpp - Functions for filtering, segmenting, clustering, boxing, loading, and saving pcd.

Starter Repo Walkthrough

ND313 C1 L1 A08 Starter Repo Walkthrough